Enhanced flow control in a cellular telephony system

ABSTRACT

The invention discloses a method ( 200, 300, 400 ) for traffic control in a cellular telephony system ( 100 ) comprising a number of cells, each cell comprising at least one Radio Base Station, RBS, ( 170 ). The system ( 100 ) comprises at least one Radio Network Controller, RNC, ( 110 130 150 ), for the control of a number of Radio Base stations. The traffic between an RBS and an RNC comprises a number of flows. The invention is intended for the control of flows from the Radio Base Stations to their RNC. The method uses one control function for each flow from each of said Radio Base Stations, and also comprises a congestion detection function ( 220 ) which detects the presence or absence of congestion in the traffic from an RBS to an RNC, and which, upon detection of congestion reduces the bit rate of the congested traffic, and in the absence of congestion, increases the bit rate of the previously congested traffic.

TECHNICAL FIELD

The present invention discloses a method for traffic control in acellular telephony system, in which system there is a number of cellsand least one node, a Radio Base Station (RBS), for the control oftraffic to and from users in the cells. The system also comprises atleast one node, a Radio Network Controller (RNC), for control of anumber of Radio Base stations.

The present invention is primarily aimed at facilitating control of thetraffic between an RBS and an RNC, and more specifically at the trafficfrom the RBS to the RNC.

BACKGROUND

In the 3G cellular telephony system known as WCDMA, (Wideband CodeDivision Multiple Access), the system is divided into cells, and has anumber of Radio Base Stations (RBS) which monitor and control traffic toand from users (UE) in the cells. The node “above” the RBSs is known asthe Radio Network Controller (RNC), with one of the functions of the RNCbeing to monitor and control the RBSs.

The traffic from the RBSs to the RNC can be expressed as a number offlows. Accordingly, the system needs to comprise a function formonitoring and controlling the flows from the RBSs to the RNC. Thepurpose of this monitoring and controlling is, inter alia, to controlcongestion over the interface between the RBSs and the RNC, and alsoover the interface between the RNC's in the system.

There are several possibilities for controlling such flows, depending onthe cost of the transmission and the properties of the traffic. Suchpossibilities are e.g. so called “overprovisioning” or admissioncontrol, or a combination of those methods.

SUMMARY

As explained above, there is a need for an improved control function ina cellular telephony system for the traffic from RBSs to their RNC.

This need is addressed by the present invention in that it discloses amethod for traffic control in a cellular telephony system, in whichsystem there is a number of cells, with each cell comprising at leastone node, a Radio Base Station (RBS), for the control of traffic to andfrom users in the cell.

The system in which the invention can be applied also comprises at leastone node, a Radio Network Controller (RNC), for the control of a numberof Radio Base stations. The traffic between an RBS and an RNC cancomprise a number of flows, and the method of the invention is intendedfor the control of said flows from the Radio Base Stations in the systemto their RNC.

The method comprises using one control function for each controlled flowfrom each of said Radio Base Stations. This control function comprises acongestion detection function which detects the presence or absence ofcongestion in the traffic from an RBS to an RNC, which upon detection ofcongestion reduces the bit rate of the congested traffic. In the absenceof congestion, the control function increases the bit rate of thepreviously congested traffic.

Due to the fact that the invention discloses one control function foreach controlled flow, a greater degree of tailoring and responsivenessmay be obtained by means of the invention.

The invention is mentioned above as having one control function per eachcontrolled flow since, conceivably, it may be desired in some systems toleave one or more flows outside of the control function of theinvention. This can also be expressed as saying that one instance of thecontrol function of the invention is used per each controlled flow.

The reduction of traffic is suitably carried out in a non-linearfashion, for example as an exponential reduction or as a step function.

The increase when there is no congestion detected can suitably becarried out in a linear fashion, but naturally also as in a non-linearfashion.

Suitably, the flow control function has one function which is located inthe RNC, and one function which is located in the RBS. In a preferredembodiment, the congestion detection function is located in the RNC,and, if congestion is detected, a control frame indicating this is sentfrom the RNC to the RBS, and the RBS carries out the bit rate reduction.

As a preferred option, the control frame can only be sent if a previoussuch control frame has not been sent within a predefined first timeinterval, which will save processing resources in the RNC, and whichwill also give previous reduction a chance to take effect.

For the same reason, in a preferred embodiment, the control frame fromthe RNC can only be acted upon in the RBS if a previous such controlframe has not been received within a predefined second time interval.

Also in a preferred embodiment, the increase of the bit rate from theRBS to the RNC is carried out if no control frame indicating congestionhas been received from the RNC from the RNC within a predefined thirdtime interval.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention will be described in more detail in the following, withreference to the appended drawings, in which

FIG. 1 shows an overview of a system in which the present invention maybe applied, and

FIG. 2 shows some logical blocks which are included in a system whichuses the invention, and

FIG. 3 shows a rough flow chart of the invention, and

FIG. 4 shows the system of FIG. 2, with an expanded function.

DETAILED DESCRIPTION

FIG. 1 shows an overview of parts of a cellular telephony system 100 inwhich the present invention can be applied. The invention will in thefollowing be described as being a WCDMA-system, but it should beunderstood that this is as an example only, the invention can be appliedto more or less any cellular telephony system which comprises similarsystem components and functions.

In order to facilitate the understanding of the invention, all parts andcomponents of the system 100 are not shown in FIG. 1, but only thoseparts and components which are the most relevant to the invention.

As shown in FIG. 1, the system 100 comprises a number of Radio BaseStations 170, one of which is shown. The RBS 170 monitors and controlstraffic to and from at least one cell (not shown) in the system, andalso communicates with the “next” node in the system, said node being aRadio Network Controller (RNC), a number of RNC's 110, 130, 150 beingshown.

As explained previously, the traffic between the RBS and the RNC's canbe expressed as a number of flows. Thus, in order to facilitate in thesystem, there must be a function for the control of these flows, inorder to, for example, act when there is congestion in the system.

As can be realized from FIG. 1, the flows from the RBS to one or more ofthe RNC's can encounter bottlenecks, with different flows possiblyencountering different bottlenecks in the system.

The present invention discloses a flow control method which, as opposedto previous such methods, operates on a per-flow basis, i.e. theinvention uses one control function for each of said flows from eachRBS.

Such per-flow regulation is beneficial for the control of flows thatencounter different bottleneck in the network, and a per flow controlfunction also enables the separation of the applied QoS (Quality ofService) solution from the flow control function.

The flow control function according to the invention will be describedin detail below, but initially, a short introduction to the function ofthe invention will first be given:

The invention is aimed at controlling the flow from the RBSs to the RNC,a traffic which is known as the uplink direction or in someapplications, Enhanced Uplink, EUL, or High Speed Uplink Packet Access,HSUPA.

The EUL Flow Control method of the invention, briefly, operates in thefollowing way: Data frames, usually in the form of E-DCH (EnhancedDedicated Channel) frames from flow controlled radio bearers aremonitored in an EUL flow control block in the RNC.

Thus, the flow control block in the RNC is able to detect congestion inthe interface between the RNC and the RBS, said interface being referredto as the lub. If the flow control block of the RNC detects congestion,it sends a Transport Network Layer Congestion Indication (TCI) controlframe to the RBS.

TCI control frames are not sent particularly often, in order to saveprocessing resources in RNC and to allow previous bit rate reductions totake effect after congestion detection. For the same reason, theinvention uses a timer in the RNC which regulates the minimum timeinterval between sending any two consecutive TCI frames to an RBS.

The RBS receives the TCI frame, and addresses the congestion byreduction of the rate in its EUL scheduling function by a certainpredefined percentage.

There is another timer in the RBS that regulates the possible shortesttime, i.e. a second time interval, between two bit rate reductions inthe scheduler, which is used for the same reasons as the first timeinterval in the RNC, and also to facilitate interoperability withsystems from different manufacturers.

If no congestion messages are received in the RBS for a certain time,i.e. a third interval, the scheduler in the RBS increases the bit ratein small predefined steps.

In FIG. 2, a block diagram 200 gives an overview of the logical blocksof the EUL flow control function of the invention. It should be pointedout here that the flow control function of the invention works per flow,but the decision on whether or not a certain flow should be regulated bythe flow control function comes from a QoS (Quality of Service) mappingfunctionality which, as such, is not part of the invention, and which isthus not described in more detail here.

As shown in the block diagram 200, the flow control function comprisesfunctionalities both in the RNC and in the RBS. The functionality whichis located in the RNC is shown as 210 in FIG. 2, and is in the followingreferred to as the RNC EUL flow control, indicated in FIG. 2 as RNC EULFC. The EUL flow control (EUL FC) block 210 in the RNC monitors thearrival of E-DCH data frames of the flow controlled flows which arrivevia the Transport Network, TN, 240 of the system, and thus, the EUL FCblock 210 can detect congestion in the transport network, 240. TheTransport Network 240 comprises the interfaces lur and lub, interfaceswhich have been explained previously in this text.

The EUL FC uses one of two different indicators of congestion in thetransport network, namely an increase in data delay and data frameswhich have been lost or destroyed, said indicators being checked by aspecial congestion detection function 220 in the EUL FC 210, indicatedas CD in FIG. 2.

The loss of data frames can be detected by said function 210 by means ofmissing frame sequence number, and destroyed frames can be detected bychecking the CRC of the header and of the payload.

An increase in data delay can be detected by a so called dynamic delayfunctionality in the Congestion Detection function 220 of the RNC EULflow control 210. Dynamic delay is a measurement of the degree of bufferbuild-up in the transport network 240 between the RBS and the RNC forthe E-DCH data frames.

The RNC EUL FC 210 comprises a sub-block 230, which receives a signalfrom the Congestion Detection Function 220 that congestion has beendetected, and which then, via the TN 240, sends a congestion indication(TCI) control frame to the RBS for the affected flow. The sub block 230is indicated in FIG. 2 as “TNL Cl”, TNL Congestion Indication.

In order to ensure a minimum time between bit rate reductions, the TCIintensity per flow controlled EUL flow is limited by a parameter whichcorresponds to a first predefined time interval, which is the minimuminterval for sending TCI control frames from the RNC EUL FC to the RBS.In other words, said first time interval must elapse between twoconsecutive TCI messages are sent from the RNC EUL FC 210.

In a preferred embodiment, after the RNC EUL FC sends a TCI, lubcongestion detection is not needed to be evaluated during the next ofsaid first time intervals. However, the Dynamic delay learning of whatthe shortest delay must be evaluated for every received E-DCH dataframes.

As is also shown in the block diagram 200 of FIG. 2, the invention alsocomprises a functional block 250 located in the RBS, in other words aRBS EUL

Flow Control, shown as “RBS EUL FC” in FIG. 2. The functional block 250in the RBS in turn comprises a flow control main algorithm 260, shown as“FC Main” in FIG. 2, which has as its output a signal to the RBS EULscheduler 270 regarding the bit rate, “reduce bit rate”. The RBS EULscheduler 270 as such is a known function in the RBS, and will thereforenot be described in more detail here. It is indicated as “RBS EULSched.” In FIG. 2.

A more detailed description of the main algorithm 260 of the RBS EUL FC250 will now be given with reference to FIG. 3, which shows a flow chartof the RBS EUL FC main algorithm 250. It should be pointed out thatsince the invention discloses a per flow control function, one instanceof the algorithm according to the flow chart 250 is used for each flowcontrolled EUL flow.

As indicated in the flow chart 250, there is comprised in the functionin the RBS a check 310 of whether or not the flow should be flowcontrolled. If the answer is YES, the function waits for TCI:sindicating congestion, from the RNC, block 340. When a congestion isindicated, the “prohibit timer” which is active during the time intervalneeded between two bit rate reductions in the RBS is checked. If theprohibit timer is not active, the bit rate is reduced with a certainpercentage value, which is done by sending a message to the EULscheduling function (not shown here, but shown as 270 in FIG. 2) in theRBS, see block 360. Said percentage value is a parameter that it ispossible to vary, i.e. it can be made implementation dependent. It isthus the role of the RBS scheduler to carry out the actual bit ratereduction.

After a bit rate reduction, the prohibit timer is also started, seeblock 360, in order to prevent further bit rate reductions too close intime to the previous one. This timer regulates the possible shortesttime between two consecutive bit rate reductions. The flow controlmethod reduces the bit rate exponentially, e.g. with 10 or 50%. Thereduction can also be in other non-linear ways, for example as a stepfunction. Naturally, if this is suitable for the system, the reductioncan also be a linear one.

The reduction is followed by a linear increase of the bit rate, suitablythe same linear increase is used for all EUL FC flows in all RNC:s, saidincrease being a parameter to be defined. Naturally, the increase canalso be non linear, if this is suitable in the system. As an example, ina particular embodiment, the linear bit rate increase is only carriedout during a certain time period, following which the increase step canbe non-linear, or it can be increased but still be linear. The controlof this increase is, in this embodiment of the invention, controlled bythe RBS EUL scheduler 270.

Some additional words can be said about the role of the RBS scheduler270 as shown in FIG. 2: As described above, in the event congestion, theuplink bit rate reduction is performed as a real bit rate reduction overthe EUL air-interface: The EUL Flow Control 250 signals a bit ratereduction to the RBS Scheduler 270 which then reduces the bit rate overthe air-interface, by means of so called Absolute Grants or RelativeGrants. Since these grants are well known to those skilled in the art,they will not be described in more detail here.

In a particular application, the invention is used in a system which hasa so called “Soft Hand Over” function, which means that the E-DCH RadioBearer, i.e. the originator of the traffic, can be in the Soft Hand Overstate, meaning that the air interface E-DCH data frames may be receivedin several cells.

One of these cells is defined as the “Serving Cell”, with the othercells thus being “non-served cells”. This also means that there will becorresponding served and non served RBS:s.

In a system with served and non served RBS:s, a possible solution to theproblem of congestion reduction would, according to the invention, be to“drop” some of the data frames in the non-served RBS:s, when the lub

Transport Network link is congested. These dropped data frames are neversent over the lub interface, and will thus not trigger the lubcongestion detection algorithm in the RNC. There is still a highprobability that the dropped data frames are also received correctly inthe serving cell RBS, and sent to the RNC from there, since, accordingto the inventive principle, there is no dropping in the serving RBS:s.

The principle of the “dropping algorithm” is that after dropping a dataframe, the algorithm will allow for sending a given amount of data,suitably expressed as an amount of octets. When that amount of octetshas been sent, another frame must be dropped etc. An example of thisprinciple is as follows: a 1000 octets long E-DCH data frame is droppedwhen the allowed forwarding ratio is 90% of the capacity, which allowsfor sending another 1000*0.9/(1−0.9)=9000 octets before a frame must bedropped again.

According to the invention, an extra margin can be provided for sendingshort E-DCH data frames, which allows for sending a few more short dataframes before a long data frame must be dropped.

The non-serving cell dropping unit will, according to the invention,gradually recover from having a dropping rate to enter normal operation,without any commands or signals from other units. One way of carryingthis out is to evaluate the flow controlled EUL flow in question with apre-defined frequency, such as, for example, 100 ms, and see if the bitrate of the flow can be increased or not.

The default system behaviour is to send EUL air-interface ACK(Acknowledgement) messages for the dropped air interface data frames,but it is possible to send NACK (Negative Acknowledgement) messages aswell. If NACK is used, it would be useful to have several HARQ (HybridAutomatic Repetition Request) processes, as follows: if, for example,two HARQ processes are used, one of them could be used for the “besteffort QoS” which is flow controlled, and the other for streaming QoSflows which are not flow controlled.

The NACK method would be that the scheduler answers with NACK whendropping data frames in RBS, i.e. for each NACK, the probability thatthe serving cell has detected it correctly increases, instead of sendingACK and then dropping the data frame in non-serving cell. Using severalHARQ processes is mostly useful when using 2 ms TTI. (TransmissionTiming Interval)

Also, a mix between non-serving cell NACKs and E-DCH frame droppingcould be considered: It would be possible to first check the content ofMAC-e, and based on the content decide to “DROP ₊NACK” (single flow), or“DROP a part of the content+ACK/NACK-whichever” (multiple flows, ofwhich only one is congested). Most of the MAC-e PDUs will contain datafrom a single flow anyway (but not always). It would also be possible tofavour single flow MAC-e frames when dropping, and thereby increasingthe probability of being able to send NACK, when dropping.

FIG. 4 shows a block diagram 400 which is intended to give an overviewof the logical blocks of the EUL flow control function of the inventionwith the “data dropping function”. As can be seen, many of the blocks ofFIG. 4 are similar to those shown in FIG. 2. Those blocks have beengiven the same reference numbers and names as in FIG. 2, and will not beexplained again here.

However, in contrast to FIG. 2, the block diagram of FIG. 4 includes twomore blocks in the RBS EUL FC. There is a function 490, SRBS, fordetecting if the RBS is a serving RBS or not, which is used as input toa data frame dropping algorithm 480, DFD, in the RBS EUL the FCalgorithm.

The data frame dropping algorithm 480 carries out at least the followingfunctions:

-   -   Detect if the RBS is a serving or non serving RBS.    -   If the RBS is non serving, increase the dropping rate when a        “reduce bit rate” signal is received from the FC main algorithm        260.    -   If the RBS is non serving, gradually decrease the dropping rate        over time, to eventually become zero.

A more detailed description of the data frame dropping algorithm 480 hasbeen given above, but a principle of the algorithm is that long E-DCHdata frames will be preferred when choosing E-DCH data frames to drop.

In the dropping algorithm, there is an extra margin for sending shortE-DCH data frames, which allows for sending a few more short data framesbefore a data frame must be dropped. The reason for this is that longdata frames should be preferred when choosing frames to drop, as shortdata frames often contain control information (eg. Radio Link Control,RLC, or TCP ACK) messages, at least with a probability which is highenough to motivate an algorithm which distinguishes between short andlong packets.

1-32. (canceled)
 33. A method for traffic control in a cellulartelephony system, said cellular telephony system comprising a number ofcells, each cell comprising at least one Radio Base Station, RBS, forthe control of traffic to and from users in the cell, the cellulartelephony system also comprising at least one Radio Network Controller,RNC, for the control of a number of Radio Base stations, in whichcellular telephony system the traffic between an RBS and an RNC cancomprise a number of flows, the method controlling said flows from theRadio Base Stations in the cellular telephony system to their RNC, themethod comprising: using one control function for each controlled flowfrom each of said Radio Base Stations, said control function comprisinga congestion detection function, detecting, using the congestiondetection function, a presence or absence of congestion in the trafficfrom an RBS to an RNC, upon detection of congestion, reducing, using thecongestion detection function, a bit rate of the congested traffic, andi n the absence of congestion, increasing, using the congestiondetection function, the bit rate of the previously congested traffic.34. The method of claim 33, where said reduction or said increase oftraffic is carried out in a non-linear fashion.
 35. The method of claim33, where the flow control function has one function which is located inthe RNC and one function which is located in the RBS.
 36. The method ofclaim 35, where the congestion detection function is located in the RNC.37. The method of claim 36, where, if congestion is detected, a controlframe indicating detection of congestion is sent from the RNC to theRBS, and the RBS carries out said bit rate reduction.
 38. The method ofclaim 37, where said control frame is only sent if a previous suchcontrol frame has not been sent within a predefined first time interval.39. The method of claim 38, where the control frame from the RNC is onlyacted upon in the RBS if a previous such control frame has not beenreceived within a predefined second time interval.
 40. The method ofclaim 39, where the increase of the bit rate from the RBS to the RNC iscarried out if no control frame indicating congestion has been receivedfrom the RNC within a predefined third time interval.
 41. The method ofclaim 40, where the increase of the bit rate is limited by a predefinedspeed increase per a predefined time interval, following which intervalthe increase is carried out without said limitation.
 42. The method ofclaim 33, where, if the RBS receives a control frame indicating thatthere is traffic congestion, the RBS drops some data from being sent tothe RNC, if the RBS is a “non serving” RBS.
 43. The method of claim 42,where the RBS gives preference to dropping long data packets instead ofdropping short data packets.
 44. The method of claim 43, where the RBSallows a certain amount of data to be sent after data has been dropped.45. A Radio Network Controller, RNC, for use in a cellular telephonysystem, said RNC comprising means for controlling a number of Radio BaseStations, RBS, in said cellular telephony system, the RNC being able toreceive traffic from the RBSs in the system in a number of flows, theRNC comprising: means for monitoring the flows from the RBSs to the RNC,and means for controlling the flows from the RBSs to the RNC, oneinstance of said monitoring means and said control means is used tomonitor and control each of said controlled flows from each RBS to theRNC, the monitoring means comprising: a congestion detection functionwhich detects a presence or absence of congestion in each of saidcontrolled flows, and where the control means of the RNC being to sendone or more control messages to one or more RBSs upon detection ofcongestion, in order to achieve a reduction of the bit rate of thecongested traffic.
 46. The RNC of claim 45, further comprising: meansfor ensuring that only one of said control messages can be sent within apredefined first time interval.
 47. The RNC of claim 45, where thecongestion detection function detects congestion by means of detectingthat data which should have been received has been lost.
 48. The RNC ofclaim 45, where the congestion detection function detects congestion bydetecting an increase in data delay from one or more RBS.
 49. A RadioBase Station, RBS, for use in a cellular telephony system, in whichcellular telephony system there is at least one Radio NetworkController, RNC, for monitoring and control of RBSs in the cellulartelephony system, said RBS comprising: a control function which controlsthe traffic flows from the RBS to the RNC, where one instance of thecontrol function acts on each of said controlled flows from the RBS tothe RNC, means for receiving congestion detection messages from the RNC,means for reducing a bit rate of congested traffic upon reception of acongestion detection message, means for detecting an absence ofcongestion, and means for increasing the bit rate of the previouslycongested traffic upon detection of the absence of congestion.
 50. TheRBS of claim 49, where said reduction is only carried out once per eachof a second predefined time interval.
 51. The RBS of claim 50, wheresaid reduction or said increase of traffic is carried out in anon-linear fashion.
 52. The RBS of claim 49, where said increase isinitiated if no congestion indication messages have been received fromthe RNC within a third predefined time interval.
 53. The RBS of claim49, further comprising: means for detecting if the RBS is a “nonserving” RBS, and means for ensuring that if the RBS is “non serving”and if the RBS receives a control frame indicating that there is trafficcongestion, the RBS drops some data from being sent to the RNC.
 54. TheRBS of claim 53, additionally comprising: means for ensuring that theRBS gives preference to dropping long data packets instead of droppingshort data packets.
 55. The RBS of claim 54, further comprising: meansfor ensuring that the RBS allows a certain amount of data to be sentafter data has been dropped.